<html>
<head>
<link rel="stylesheet" href="../resource/combine/combine.css">
<script src="../resource/combine/combine.js"></script>
<!--
<script src="http://code.jquery.com/jquery-1.8.2.js"></script>
<script src="http://www.google.com/jsapi?autoload={'modules':[{'name':'visualization','version':'1','packages':['controls', 'charteditor']}]}"></script>
<script src="http://jquery-csv.googlecode.com/git/src/jquery.csv.js"></script>
<link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
<link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap-theme.min.css">
<script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js"></script>
-->
<script>
$(function() {
  google.load("visualization", "1", {packages:["corechart"]});

  var csv = $('#textInput').val();
  var dt = google.visualization.arrayToDataTable($.csv.toArrays(csv, {onParseValue: $.csv.hooks.castToScalar}));

  function sortCaseInsensitive(dt, column) {
    for (var row = 0; row < dt.getNumberOfRows(); row++) {
      var s = dt.getValue(row, column);
      dt.setValue(row, column, s.toUpperCase());
      dt.setFormattedValue(row, column, s);
    }
    dt.sort(column);
  }

  function AddToOverall(dt) {
    if (overallDt == null) {
      overallDt = dt.clone();
    }
    else {
      var col1 = [];
      for (var i = 1; i < overallDt.getNumberOfColumns(); i++)
        col1.push(i);
      overallDt = google.visualization.data.join(overallDt, dt, 'full', [[0, 0]], col1, [1]);
    }

    var newCol = overallDt.getNumberOfColumns() - 1;
    overallDt.setColumnLabel(newCol, type + ' ' + overallDt.getColumnLabel(newCol))
    var formatter1 = new google.visualization.NumberFormat({ fractionDigits: 0 });
    formatter1.format(overallDt, newCol);

    for (var row = 0; row < overallDt.getNumberOfRows(); row++) {
      if (overallDt.getValue(row, newCol) == null) {
        overallDt.setValue(row, newCol, Number.POSITIVE_INFINITY);
        overallDt.setFormattedValue(row, newCol, "");
      }
    }
  }

  function createSortEvent(type, dt, chart) {
    return function(e) {
      if (e.column == 0 || e.column == 1) {
        var t = dt.clone();
        drawBarChart(type, t, chart, [{column: e.column, desc: !e.ascending }]);
      }
    }
  }

  addSection("0. Overall");

  var overallDiv = document.createElement("div");
  overallDiv.className = "tablechart";
  $("#main").append(overallDiv);

  // Per type sections
  var types = dt.getDistinctValues(0);
  var overallDt;
  for (var i in types) {
    var type = types[i];
    addSection(type);

    var view = new google.visualization.DataView(dt);
    view.setRows(view.getFilteredRows([{column: 0, value: type}]));

    if (type.search("Code size") != -1) {
      var sizedt = google.visualization.data.group(
        view,
        [1], 
        [{"column": 7, "aggregation": google.visualization.data.sum, 'type': 'number' }]
      );
      AddToOverall(sizedt);
      sortCaseInsensitive(sizedt, 0);
      addSubsection(sizedt.getColumnLabel(1));
      var sizeTable = drawTable(type, sizedt.clone(), false);
      var sizeChart = drawBarChart(type, sizedt.clone());
      google.visualization.events.addListener(sizeTable, 'sort', createSortEvent(type, sizedt, sizeChart));
    }
    else {
      addSubsection("Time");

      var timedt = google.visualization.data.group(
        view,
        [1], 
        [{"column": 3, "aggregation": google.visualization.data.sum, 'type': 'number' }]
      );

      AddToOverall(timedt);
      sortCaseInsensitive(timedt, 0);
      var timeTable = drawTable(type, timedt.clone(), true);
      var timeChart = drawBarChart(type, timedt.clone());
      google.visualization.events.addListener(timeTable, 'sort', createSortEvent(type, timedt, timeChart));

      // Per JSON
      drawPivotBarChart(
        type + " per JSON",
        pivotTable(google.visualization.data.group(
          view,
          [2, 1],
          [{"column": 3, "aggregation": google.visualization.data.sum, 'type': 'number' }]
        )),
        dt.getColumnLabel(3)
      );

      // Only show memory of Parse
      if (type.search("Parse") != -1) {
        for (var column = 4; column <= 6; column++) {
          var memorydt = google.visualization.data.group(
            view,
            [1], 
            [{"column": column, "aggregation": google.visualization.data.sum, 'type': 'number' }]
          );
          AddToOverall(memorydt);
          sortCaseInsensitive(memorydt, 0);
          addSubsection(memorydt.getColumnLabel(1));
          var memoryTable = drawTable(type, memorydt.clone(), false);
          var memoryChart = drawBarChart(type, memorydt.clone());

          google.visualization.events.addListener(memoryTable, 'sort', createSortEvent(type, memorydt, memoryChart));
        }
      }
    }
  }

  var overallTable = new google.visualization.Table(overallDiv);
  sortCaseInsensitive(overallDt, 0);
  overallTable.draw(overallDt);

  $(".chart").each(function() {
    var chart = $(this);
    var d = $("#downloadDD").clone().css("display", "");
    $('li a', d).each(function() {
          $(this).click(function() {
              var svg = chart[0].getElementsByTagName('svg')[0].parentNode.innerHTML;
              svg=sanitize(svg);
              $('#imageFilename').val($("#title").html() + "_" + chart.data("filename"));
              $('#imageGetFormTYPE').val($(this).attr('dltype'));
              $('#imageGetFormSVG').val(svg);
              $('#imageGetForm').submit();
          });
      });   
    $(this).after(d);
  });

  // Add configurations
  var thisConfig = "performance_Corei7-4980HQ@2.80GHz_mac32_clang7.0";
  var configurations = ["conformance","performance_Corei7-4980HQ@2.80GHz_mac32_clang7.0","performance_Corei7-4980HQ@2.80GHz_mac64_clang7.0"];

  for (var i in configurations) {
    var c = configurations[i];
    $("#benchmark").append($("<li>", {class : (c == thisConfig ? "active" : "")}).append($("<a>", {href: c + ".html"}).append(c)));
  }
});

function pivotTable(src) {
  var dst = new google.visualization.DataTable();
  
  // Add columns
  var key = src.getDistinctValues(1);
  var keyColumnMap = {};
  dst.addColumn(src.getColumnType(0), src.getColumnLabel(0));  
  for (var k in key)
    keyColumnMap[key[k]] = dst.addColumn(src.getColumnType(2), key[k]);

  // Add rows
  var pivot = src.getDistinctValues(0);
  var pivotRowMap = {};  
  for (var p in pivot)
    dst.setValue(pivotRowMap[[pivot[p]]] = dst.addRow(), 0, pivot[p]);

  // Fill cells
  for (var row = 0; row < src.getNumberOfRows(); row++)
    dst.setValue(
      pivotRowMap[src.getValue(row, 0)],
      keyColumnMap[src.getValue(row, 1)],
      src.getValue(row, 2));

  return dst;
}

function addSection(name) {
  $("#main").append(
    $("<a>", {"name": name}),
    $("<h2>", {style: "padding-top: 70px; margin-top: -70px;"}).append(name)
  );
  $("#section").append($("<li>").append($("<a>", {href: "#" + name}).append(name)));
}

function addSubsection(name) {
  $("#main").append(
    $("<h3>", {style: "padding-top: 70px; margin-top: -70px;"}).append(name)
  );
}

function drawTable(type, data, isSpeedup) {
  if (isSpeedup)
    data.addColumn('number', 'Speedup');
  else
    data.addColumn('number', 'Ratio');
  //data.sort([{ column: 1, desc: true }]);
  var formatter1 = new google.visualization.NumberFormat({ fractionDigits: 0 });
  formatter1.format(data, 1);

  var div = document.createElement("div");
  div.className = "tablechart";
  $("#main").append(div);
    var table = new google.visualization.Table(div);
    redrawTable(0);
    table.setSelection([{ row: 0, column: null}]);

  function redrawTable(selectedRow) {
      var s = table.getSortInfo();
      // Compute relative time using the first row as basis
      var basis = data.getValue(selectedRow, 1);
      for (var rowIndex = 0; rowIndex < data.getNumberOfRows(); rowIndex++)
        data.setValue(rowIndex, 2, isSpeedup ? basis / data.getValue(rowIndex, 1) : data.getValue(rowIndex, 1) / basis);

      var formatter = new google.visualization.NumberFormat({suffix: 'x'});
      formatter.format(data, 2); // Apply formatter to second column

      table.draw(data, s != null ? {sortColumn: s.column, sortAscending: s.ascending} : null);
  }

  google.visualization.events.addListener(table, 'select',
  function() {
      var selection = table.getSelection();
      if (selection.length > 0) {
          var item = selection[0];
          if (item.row != null)
              redrawTable(item.row);
      }
  });

  return table;
}

function drawBarChart(type, data, chart, sortOptions) {
  // Using same colors as in series
  var colors = ["#3366cc","#dc3912","#ff9900","#109618","#990099","#0099c6","#dd4477","#66aa00","#b82e2e","#316395","#994499","#22aa99","#aaaa11","#6633cc","#e67300","#8b0707","#651067","#329262","#5574a6","#3b3eac","#b77322","#16d620","#b91383","#f4359e","#9c5935","#a9c413","#2a778d","#668d1c","#bea413","#0c5922","#743411","#3366cc","#dc3912","#ff9900","#109618","#990099","#0099c6","#dd4477","#66aa00","#b82e2e","#316395","#994499","#22aa99","#aaaa11","#6633cc","#e67300","#8b0707","#651067","#329262","#5574a6","#3b3eac","#b77322","#16d620","#b91383","#f4359e","#9c5935","#a9c413","#2a778d","#668d1c","#bea413","#0c5922","#743411"];
  var h = data.getNumberOfRows() * 12;
  var options = { 
    title: type,
    chartArea: {left: '20%', width: '70%', height: h },
    width: 800,
    height: h + 100,
    fontSize: 10,
    bar: {groupWidth: "80%"},
    hAxis: { title: data.getColumnLabel(1) },
    legend: { position: "none" },
  };

  data.addColumn({ type: "string", role: "style" });
  data.addColumn({ type: "number", role: "annotation" });
  for (var rowIndex = 0; rowIndex < data.getNumberOfRows(); rowIndex++) {
    data.setValue(rowIndex, 2, colors[rowIndex]);
    data.setValue(rowIndex, 3, data.getValue(rowIndex, 1));
  }

  if (sortOptions != null)
    data.sort(sortOptions); // sort after assigning colors

  var formatter1 = new google.visualization.NumberFormat({ fractionDigits: 0 });
  formatter1.format(data, 3);

  if (chart == null) {
    var div = document.createElement("div");
    div.className = "chart";
    $(div).data("filename", type + "_" + data.getColumnLabel(1));
    $("#main").append(div);
    chart = new google.visualization.BarChart(div);
  }

  chart.draw(data, options);
  return chart;
}


function drawPivotBarChart(type, data, title) {
  var h = (data.getNumberOfColumns() + 1) * data.getNumberOfRows() * 5;
  var options = { 
    title: type,
    chartArea: {left: '10%', width: '70%', 'height': h},
    width: 800,
    height: h + 100,
    fontSize: 10,
    hAxis: { "title": title },
    legend: { textStyle: {fontSize: 8}},
    bar : { groupWidth: "95%" }
  };
  var div = document.createElement("div");
  div.className = "chart";
  $(div).data("filename", type + "_" + title);
  $("#main").append(div);
  var chart = new google.visualization.BarChart(div);

  chart.draw(data, options);
}

// http://jsfiddle.net/P6XXM/
function sanitize(svg) {
    svg = svg
        .replace(/\<svg/,'<svg xmlns="http://www.w3.org/2000/svg" version="1.1"')
        .replace(/zIndex="[^"]+"/g, '')
        .replace(/isShadow="[^"]+"/g, '')
        .replace(/symbolName="[^"]+"/g, '')
        .replace(/jQuery[0-9]+="[^"]+"/g, '')
        .replace(/isTracker="[^"]+"/g, '')
        .replace(/url\([^#]+#/g, 'url(#')
        .replace('<svg xmlns:xlink="http://www.w3.org/1999/xlink" ', '<svg ')
        .replace(/ href=/g, ' xlink:href=')
    /*.replace(/preserveAspectRatio="none">/g, 'preserveAspectRatio="none"/>')*/
    /* This fails in IE < 8
    .replace(/([0-9]+)\.([0-9]+)/g, function(s1, s2, s3) { // round off to save weight
    return s2 +'.'+ s3[0];
    })*/

    // IE specific
        .replace(/id=([^" >]+)/g, 'id="$1"')
        .replace(/class=([^" ]+)/g, 'class="$1"')
        .replace(/ transform /g, ' ')
        .replace(/:(path|rect)/g, '$1')
        .replace(/<img ([^>]*)>/gi, '<image $1 />')
        .replace(/<\/image>/g, '') // remove closing tags for images as they'll never have any content
        .replace(/<image ([^>]*)([^\/])>/gi, '<image $1$2 />') // closes image tags for firefox
        .replace(/width=(\d+)/g, 'width="$1"')
        .replace(/height=(\d+)/g, 'height="$1"')
        .replace(/hc-svg-href="/g, 'xlink:href="')
        .replace(/style="([^"]+)"/g, function (s) {
            return s.toLowerCase();
        });

    // IE9 beta bugs with innerHTML. Test again with final IE9.
    svg = svg.replace(/(url\(#highcharts-[0-9]+)&quot;/g, '$1')
        .replace(/&quot;/g, "'");
    if (svg.match(/ xmlns="/g).length == 2) {
        svg = svg.replace(/xmlns="[^"]+"/, '');
    }

    return svg;
}
</script>
<style type="text/css">
@media (min-width: 800px) {
/*  .container {
    max-width: 800px;
  }*/
}
textarea {
  font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace;
}
.tablechart {
/*  width: 500px;
*/  margin: auto;
  padding-top: 20px;
  padding-bottom: 20px;
}
.chart {
  padding-top: 20px;
  padding-bottom: 20px;
}
body { padding-top: 70px; }
</style>
</head>
<body>
<div class="container">
<nav class="navbar navbar-default navbar-fixed-top" role="navigation">
  <div class="container">
    <!-- Brand and toggle get grouped for better mobile display -->
    <div class="navbar-header">
      <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
        <span class="sr-only">Toggle navigation</span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
      </button>
      <a class="navbar-brand" href="https://github.com/miloyip/nativejson-benchmark"><span class="glyphicon glyphicon-home"></span> nativejson-benchmark</a>
    </div>

    <!-- Collect the nav links, forms, and other content for toggling -->
    <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
      <ul class="nav navbar-nav">
        <li class="dropdown">
          <a href="#" class="dropdown-toggle" data-toggle="dropdown">Benchmark <span class="caret"></span></a>
          <ul class="dropdown-menu" role="menu" id="benchmark">
          </ul>
        </li>
        <li class="dropdown">
          <a href="#" class="dropdown-toggle" data-toggle="dropdown">Section <span class="caret"></span></a>
          <ul class="dropdown-menu" role="menu" id="section">
          </ul>
        </li>
      </ul>
      <p class="navbar-text navbar-right">Developed by <a href="https://github.com/miloyip" class="navbar-link">Milo Yip</a></p>
    </div><!-- /.navbar-collapse -->
  </div><!-- /.container-fluid -->
</nav>
<div class="page-header">
<h1 id="title">performance_Corei7-4980HQ@2.80GHz_mac32_clang7.0</h1>
</div>
<div id="main"></div>
<h2>Source CSV</h2>
<textarea id="textInput" class="form-control" rows="5" readonly>
Type,Library,Filename,Time (ms),Memory (byte),MemoryPeak (byte),AllocCount,FileSize (byte)
1. Parse,ArduinoJson (C++),canada.json,349.370000,6471488,6471488,16,0
1. Parse,ArduinoJson (C++),citm_catalog.json,2.528000,3166016,3166016,14,0
1. Parse,ArduinoJson (C++),twitter.json,1.999000,1589056,1589056,13,0
2. Stringify,ArduinoJson (C++),canada.json,53.964000,2252816,6447120,20,0
2. Stringify,ArduinoJson (C++),citm_catalog.json,11.926000,503824,1028112,17,0
2. Stringify,ArduinoJson (C++),twitter.json,11.073000,503824,1028112,17,0
3. Prettify,ArduinoJson (C++),canada.json,152.247000,5599248,13987856,21,0
3. Prettify,ArduinoJson (C++),citm_catalog.json,31.832000,2252816,4354064,19,0
3. Prettify,ArduinoJson (C++),twitter.json,18.056000,647184,1695760,18,0
4. Statistics,ArduinoJson (C++),canada.json,50.496000,0,0,0,0
4. Statistics,ArduinoJson (C++),citm_catalog.json,0.865000,0,0,0,0
4. Statistics,ArduinoJson (C++),twitter.json,0.612000,0,0,0,0
7. Code size,ArduinoJson (C++),jsonstat,0,0,0,0,26388
1. Parse,CAJUN (C++),canada.json,1068.123000,234160112,495050688,3837856,0
1. Parse,CAJUN (C++),citm_catalog.json,152.883000,8918208,29031504,641280,0
1. Parse,CAJUN (C++),twitter.json,59.434000,2309616,8687104,249868,0
2. Stringify,CAJUN (C++),canada.json,133.544000,4272144,12660752,22,0
2. Stringify,CAJUN (C++),citm_catalog.json,17.822000,892944,1941520,3784,0
2. Stringify,CAJUN (C++),twitter.json,16.883000,892944,1941520,7244,0
4. Statistics,CAJUN (C++),canada.json,3.833000,0,0,0,0
4. Statistics,CAJUN (C++),citm_catalog.json,0.358000,0,0,0,0
4. Statistics,CAJUN (C++),twitter.json,0.091000,0,0,0,0
7. Code size,CAJUN (C++),jsonstat,0,0,0,0,84920
1. Parse,ccan/json (C),canada.json,58.831000,5350144,5350144,167193,0
1. Parse,ccan/json (C),citm_catalog.json,7.514000,2128160,2128160,68345,0
1. Parse,ccan/json (C),twitter.json,4.844000,1434512,1434512,43523,0
2. Stringify,ccan/json (C),canada.json,80.381000,2101264,2101264,19,0
2. Stringify,ccan/json (C),citm_catalog.json,4.945000,528400,528400,17,0
2. Stringify,ccan/json (C),twitter.json,2.135000,528400,528400,17,0
3. Prettify,ccan/json (C),canada.json,105.046000,8392720,8392720,21,0
3. Prettify,ccan/json (C),citm_catalog.json,9.259000,2101264,2101264,19,0
3. Prettify,ccan/json (C),twitter.json,3.194000,1052688,1052688,18,0
4. Statistics,ccan/json (C),canada.json,0.559000,0,0,0,0
4. Statistics,ccan/json (C),citm_catalog.json,0.237000,0,0,0,0
4. Statistics,ccan/json (C),twitter.json,0.143000,0,0,0,0
7. Code size,ccan/json (C),jsonstat,0,0,0,0,25952
1. Parse,cJSON (C),canada.json,16.994000,8024816,8024816,167192,0
1. Parse,cJSON (C),citm_catalog.json,6.099000,2265312,2265312,64383,0
1. Parse,cJSON (C),twitter.json,3.776000,1193440,1193440,32014,0
2. Stringify,cJSON (C),canada.json,56.220000,2252816,3764080,223241,0
2. Stringify,cJSON (C),citm_catalog.json,14.906000,503824,1007936,87274,0
2. Stringify,cJSON (C),twitter.json,8.204000,466960,996304,30092,0
3. Prettify,cJSON (C),canada.json,56.372000,2252816,4874592,223241,0
3. Prettify,cJSON (C),citm_catalog.json,15.670000,790544,2148224,87274,0
3. Prettify,cJSON (C),twitter.json,8.515000,561168,1375696,30092,0
4. Statistics,cJSON (C),canada.json,0.461000,0,0,0,0
4. Statistics,cJSON (C),citm_catalog.json,0.190000,0,0,0,0
4. Statistics,cJSON (C),twitter.json,0.159000,0,0,0,0
7. Code size,cJSON (C),jsonstat,0,0,0,0,26596
1. Parse,Configuru (C++11),canada.json,72.570000,7408400,7444896,170255,0
1. Parse,Configuru (C++11),citm_catalog.json,20.370000,3066672,3066720,58397,0
1. Parse,Configuru (C++11),twitter.json,7.129000,1585808,1585856,26413,0
2. Stringify,Configuru (C++11),canada.json,200.268000,4194320,6447168,23,0
2. Stringify,Configuru (C++11),citm_catalog.json,5.351000,524304,786576,10951,0
2. Stringify,Configuru (C++11),twitter.json,1.917000,524304,786560,1280,0
3. Prettify,Configuru (C++11),canada.json,208.745000,4194320,6447168,23,0
3. Prettify,Configuru (C++11),citm_catalog.json,8.647000,1298448,1822848,10952,0
3. Prettify,Configuru (C++11),twitter.json,3.759000,1298448,1822848,1281,0
4. Statistics,Configuru (C++11),canada.json,0.755000,0,0,0,0
4. Statistics,Configuru (C++11),citm_catalog.json,0.477000,0,0,0,0
4. Statistics,Configuru (C++11),twitter.json,0.153000,0,0,0,0
7. Code size,Configuru (C++11),jsonstat,0,0,0,0,130396
1. Parse,C++ REST SDK (C++11),canada.json,130.960000,3894176,3894208,392464,0
1. Parse,C++ REST SDK (C++11),citm_catalog.json,16.750000,1466064,1466080,73089,0
1. Parse,C++ REST SDK (C++11),twitter.json,7.645000,1135936,1136064,31411,0
2. Stringify,C++ REST SDK (C++11),canada.json,88.776000,2252816,10641424,38,0
2. Stringify,C++ REST SDK (C++11),citm_catalog.json,4.743000,561168,1576976,743,0
2. Stringify,C++ REST SDK (C++11),twitter.json,3.298000,561168,1576976,2620,0
4. Statistics,C++ REST SDK (C++11),canada.json,1.194000,0,0,0,0
4. Statistics,C++ REST SDK (C++11),citm_catalog.json,0.377000,0,0,0,0
4. Statistics,C++ REST SDK (C++11),twitter.json,0.174000,0,0,0,0
7. Code size,C++ REST SDK (C++11),jsonstat,0,0,0,0,18008
1. Parse,dropbox/json11 (C++11),canada.json,86.059000,6707056,9025232,337437,0
1. Parse,dropbox/json11 (C++11),citm_catalog.json,16.110000,2620240,4873760,105189,0
1. Parse,dropbox/json11 (C++11),twitter.json,11.952000,1388512,2179584,56661,0
2. Stringify,dropbox/json11 (C++11),canada.json,87.396000,4194320,6447120,19,0
2. Stringify,dropbox/json11 (C++11),citm_catalog.json,4.846000,1298448,1822736,17,0
2. Stringify,dropbox/json11 (C++11),twitter.json,3.514000,524304,786448,16,0
4. Statistics,dropbox/json11 (C++11),canada.json,1.000000,0,0,0,0
4. Statistics,dropbox/json11 (C++11),citm_catalog.json,0.368000,0,0,0,0
4. Statistics,dropbox/json11 (C++11),twitter.json,0.146000,0,0,0,0
7. Code size,dropbox/json11 (C++11),jsonstat,0,0,0,0,78844
1. Parse,mikeando/FastJson (C++),canada.json,12.144000,5378464,7631616,22,0
1. Parse,mikeando/FastJson (C++),citm_catalog.json,4.791000,2084992,4116960,22,0
1. Parse,mikeando/FastJson (C++),twitter.json,2.536000,917120,1708288,24,0
2. Stringify,mikeando/FastJson (C++),canada.json,77.335000,2252816,2252816,2,0
2. Stringify,mikeando/FastJson (C++),citm_catalog.json,5.403000,524304,524304,2,0
2. Stringify,mikeando/FastJson (C++),twitter.json,2.376000,790544,790544,2,0
4. Statistics,mikeando/FastJson (C++),canada.json,0.442000,0,0,0,0
4. Statistics,mikeando/FastJson (C++),citm_catalog.json,0.137000,0,0,0,0
4. Statistics,mikeando/FastJson (C++),twitter.json,0.072000,0,0,0,0
7. Code size,mikeando/FastJson (C++),jsonstat,0,0,0,0,57980
1. Parse,gason (C++11),canada.json,5.693000,4939808,4939808,658,0
1. Parse,gason (C++11),citm_catalog.json,2.025000,2641952,2641952,151,0
1. Parse,gason (C++11),twitter.json,0.957000,1015840,1015840,57,0
2. Stringify,gason (C++11),canada.json,34.825000,1298448,4644880,19,0
2. Stringify,gason (C++11),citm_catalog.json,11.660000,790544,2088976,18,0
2. Stringify,gason (C++11),twitter.json,6.749000,483344,1007632,17,0
3. Prettify,gason (C++11),canada.json,86.736000,7319568,15708176,223242,0
3. Prettify,gason (C++11),citm_catalog.json,20.433000,1802256,4055056,49498,0
3. Prettify,gason (C++11),twitter.json,9.156000,770064,2068496,15285,0
4. Statistics,gason (C++11),canada.json,0.646000,0,0,0,0
4. Statistics,gason (C++11),citm_catalog.json,0.294000,0,0,0,0
4. Statistics,gason (C++11),twitter.json,0.178000,0,0,0,0
7. Code size,gason (C++11),jsonstat,0,0,0,0,20184
1. Parse,Jansson (C),canada.json,100.769000,5680352,5680400,224392,0
1. Parse,Jansson (C),citm_catalog.json,26.430000,3239472,3239552,111230,0
1. Parse,Jansson (C),twitter.json,13.811000,1288640,1289184,43822,0
2. Stringify,Jansson (C),canada.json,91.571000,2363408,6557712,21,0
2. Stringify,Jansson (C),citm_catalog.json,5.040000,770064,2068496,19,0
2. Stringify,Jansson (C),twitter.json,2.883000,770064,1294352,18,0
3. Prettify,Jansson (C),canada.json,97.483000,8273936,16924688,22,0
3. Prettify,Jansson (C),citm_catalog.json,6.582000,2252816,4349968,20,0
3. Prettify,Jansson (C),twitter.json,3.360000,770064,2068496,19,0
4. Statistics,Jansson (C),canada.json,0.878000,0,0,0,0
4. Statistics,Jansson (C),citm_catalog.json,0.571000,0,0,0,0
4. Statistics,Jansson (C),twitter.json,0.353000,0,0,0,0
7. Code size,Jansson (C),jsonstat,0,0,0,0,68300
1. Parse,jsmn (C),canada.json,400.581000,4931600,4931600,3,0
1. Parse,jsmn (C),citm_catalog.json,14.852000,3395600,3395600,3,0
1. Parse,jsmn (C),twitter.json,4.664000,1294352,1294352,3,0
4. Statistics,jsmn (C),canada.json,0.382000,0,0,0,0
4. Statistics,jsmn (C),citm_catalog.json,0.223000,0,0,0,0
4. Statistics,jsmn (C),twitter.json,0.079000,0,0,0,0
7. Code size,jsmn (C),jsonstat,0,0,0,0,15664
1. Parse,JsonBox (C++),canada.json,360.030000,4195040,9346032,974652,0
1. Parse,JsonBox (C++),citm_catalog.json,82.844000,2032976,6382976,261150,0
1. Parse,JsonBox (C++),twitter.json,37.087000,1231040,3018688,102061,0
2. Stringify,JsonBox (C++),canada.json,224.335000,2252816,6447120,24,0
2. Stringify,JsonBox (C++),citm_catalog.json,39.967000,499728,1024016,9264,0
2. Stringify,JsonBox (C++),twitter.json,29.026000,499728,1024016,22632,0
3. Prettify,JsonBox (C++),canada.json,200.271000,3923984,8118288,24,0
3. Prettify,JsonBox (C++),citm_catalog.json,35.330000,1728528,2777104,9265,0
3. Prettify,JsonBox (C++),twitter.json,29.127000,634896,1683472,22633,0
4. Statistics,JsonBox (C++),canada.json,0.470000,0,0,0,0
4. Statistics,JsonBox (C++),citm_catalog.json,0.214000,0,0,0,0
4. Statistics,JsonBox (C++),twitter.json,0.091000,0,0,0,0
7. Code size,JsonBox (C++),jsonstat,0,0,0,0,110728
1. Parse,jsoncons (C++),canada.json,97.621000,3468752,6246784,230927,0
1. Parse,jsoncons (C++),citm_catalog.json,9.108000,1231312,3509184,38576,0
1. Parse,jsoncons (C++),twitter.json,4.628000,895024,1555424,14065,0
2. Stringify,jsoncons (C++),canada.json,104.483000,2252816,6463920,26,0
2. Stringify,jsoncons (C++),citm_catalog.json,4.449000,634896,1683472,24,0
2. Stringify,jsoncons (C++),twitter.json,2.676000,634896,1159184,24,0
3. Prettify,jsoncons (C++),canada.json,100.052000,2252816,6463920,26,0
3. Prettify,jsoncons (C++),citm_catalog.json,4.368000,634896,1683472,24,0
3. Prettify,jsoncons (C++),twitter.json,2.641000,634896,1159184,24,0
4. Statistics,jsoncons (C++),canada.json,2.180000,0,32,1,0
4. Statistics,jsoncons (C++),citm_catalog.json,0.869000,0,64,719,0
4. Statistics,jsoncons (C++),twitter.json,0.645000,0,464,2594,0
7. Code size,jsoncons (C++),jsonstat,0,0,0,0,110388
1. Parse,JsonCpp (C++),canada.json,224.865000,8921568,13431392,554040,0
1. Parse,JsonCpp (C++),citm_catalog.json,16.797000,2611984,7121728,115700,0
1. Parse,JsonCpp (C++),twitter.json,10.659000,1245120,2932720,54411,0
2. Stringify,JsonCpp (C++),canada.json,117.783000,2252816,6447280,110290,0
2. Stringify,JsonCpp (C++),citm_catalog.json,8.242000,634896,1159184,19990,0
2. Stringify,JsonCpp (C++),twitter.json,6.322000,634896,1159184,20794,0
4. Statistics,JsonCpp (C++),canada.json,1.470000,0,32,1,0
4. Statistics,JsonCpp (C++),citm_catalog.json,0.458000,0,64,719,0
4. Statistics,JsonCpp (C++),twitter.json,0.517000,0,464,2594,0
7. Code size,JsonCpp (C++),jsonstat,0,0,0,0,248424
1. Parse,json-c (C),canada.json,127.256000,19890720,19891856,390651,0
1. Parse,json-c (C),citm_catalog.json,19.582000,7220608,7221776,131793,0
1. Parse,json-c (C),twitter.json,8.423000,1923120,1924736,49446,0
2. Stringify,json-c (C),canada.json,21.392000,6447136,6447136,21,0
2. Stringify,json-c (C),citm_catalog.json,11.868000,1138720,1138720,18,0
2. Stringify,json-c (C),twitter.json,5.668000,1159200,1159200,18,0
3. Prettify,json-c (C),canada.json,40.284000,13762592,13762592,22,0
3. Prettify,json-c (C),citm_catalog.json,17.245000,4349984,4349984,20,0
3. Prettify,json-c (C),twitter.json,6.933000,1683488,1683488,19,0
4. Statistics,json-c (C),canada.json,1.723000,0,0,0,0
4. Statistics,json-c (C),citm_catalog.json,0.519000,0,0,0,0
4. Statistics,json-c (C),twitter.json,0.158000,0,0,0,0
7. Code size,json-c (C),jsonstat,0,0,0,0,56164
1. Parse,hjiang/JSON++ (C++),canada.json,230.739000,7465904,11971504,448011,0
1. Parse,hjiang/JSON++ (C++),citm_catalog.json,45.380000,2737504,7087456,101193,0
1. Parse,hjiang/JSON++ (C++),twitter.json,17.969000,1459360,3142848,55239,0
2. Stringify,hjiang/JSON++ (C++),canada.json,312.808000,3981328,12157008,504127,0
2. Stringify,hjiang/JSON++ (C++),citm_catalog.json,61.085000,1048592,4571152,161388,0
2. Stringify,hjiang/JSON++ (C++),twitter.json,25.855000,589840,2273808,59268,0
4. Statistics,hjiang/JSON++ (C++),canada.json,0.547000,0,0,0,0
4. Statistics,hjiang/JSON++ (C++),citm_catalog.json,0.236000,0,0,0,0
4. Statistics,hjiang/JSON++ (C++),twitter.json,0.101000,0,0,0,0
7. Code size,hjiang/JSON++ (C++),jsonstat,0,0,0,0,92288
1. Parse,JVar (C++),canada.json,90.761000,2690544,2690544,56052,0
1. Parse,JVar (C++),citm_catalog.json,16.820000,1399888,1399904,22827,0
1. Parse,JVar (C++),twitter.json,7.745000,361152,361216,7503,0
2. Stringify,JVar (C++),canada.json,44.303000,1044496,1044496,2,0
2. Stringify,JVar (C++),citm_catalog.json,7.178000,499728,499728,2,0
2. Stringify,JVar (C++),twitter.json,2.599000,466960,466960,2,0
4. Statistics,JVar (C++),canada.json,0.830000,0,0,0,0
4. Statistics,JVar (C++),citm_catalog.json,0.334000,0,0,0,0
4. Statistics,JVar (C++),twitter.json,0.143000,0,0,0,0
7. Code size,JVar (C++),jsonstat,0,0,0,0,84692
1. Parse,Jzon (C++),canada.json,144.898000,12180832,16712912,612962,0
1. Parse,Jzon (C++),citm_catalog.json,42.968000,2034064,6565312,86205,0
1. Parse,Jzon (C++),twitter.json,21.697000,1219488,2805824,62222,0
2. Stringify,Jzon (C++),canada.json,33.175000,2252816,6447152,110284,0
2. Stringify,Jzon (C++),citm_catalog.json,8.040000,503824,1138704,1698,0
2. Stringify,Jzon (C++),twitter.json,5.820000,503824,1138704,5974,0
3. Prettify,Jzon (C++),canada.json,68.869000,8273936,16662544,333506,0
3. Prettify,Jzon (C++),citm_catalog.json,16.554000,1990672,4243472,59874,0
3. Prettify,Jzon (C++),twitter.json,8.214000,790544,1839120,21988,0
4. Statistics,Jzon (C++),canada.json,0.722000,0,32,1,0
4. Statistics,Jzon (C++),citm_catalog.json,0.354000,0,64,719,0
4. Statistics,Jzon (C++),twitter.json,0.559000,0,464,2594,0
7. Code size,Jzon (C++),jsonstat,0,0,0,0,107628
1. Parse,Nlohmann (C++11),canada.json,67.833000,3813312,3813312,170258,0
1. Parse,Nlohmann (C++11),citm_catalog.json,12.196000,1884592,1884592,63613,0
1. Parse,Nlohmann (C++11),twitter.json,8.684000,1155776,1155792,40530,0
2. Stringify,Nlohmann (C++11),canada.json,96.606000,2252816,4505616,21,0
2. Stringify,Nlohmann (C++11),citm_catalog.json,9.410000,503824,1138704,4502,0
2. Stringify,Nlohmann (C++11),twitter.json,5.648000,503824,1138704,9837,0
3. Prettify,Nlohmann (C++11),canada.json,133.774000,7602192,15990800,223244,0
3. Prettify,Nlohmann (C++11),citm_catalog.json,17.017000,2252816,4505616,53983,0
3. Prettify,Nlohmann (C++11),twitter.json,7.941000,770064,1818640,25105,0
4. Statistics,Nlohmann (C++11),canada.json,1.084000,0,32,2,0
4. Statistics,Nlohmann (C++11),citm_catalog.json,1.188000,0,64,4485,0
4. Statistics,Nlohmann (C++11),twitter.json,1.448000,0,464,9820,0
7. Code size,Nlohmann (C++11),jsonstat,0,0,0,0,41620
1. Parse,Parson (C),canada.json,76.564000,4696640,4727632,336060,0
1. Parse,Parson (C),citm_catalog.json,17.658000,1831776,1831936,185585,0
1. Parse,Parson (C),twitter.json,8.507000,912608,912832,72477,0
2. Stringify,Parson (C),canada.json,92.865000,2252816,2252816,2,0
2. Stringify,Parson (C),citm_catalog.json,19.620000,634896,634896,2,0
2. Stringify,Parson (C),twitter.json,12.513000,634896,634896,2,0
3. Prettify,Parson (C),canada.json,88.879000,2252816,2252816,2,0
3. Prettify,Parson (C),citm_catalog.json,19.659000,634896,634896,2,0
3. Prettify,Parson (C),twitter.json,12.546000,634896,634896,2,0
4. Statistics,Parson (C),canada.json,1.123000,0,0,0,0
4. Statistics,Parson (C),citm_catalog.json,0.967000,0,0,0,0
4. Statistics,Parson (C),twitter.json,1.060000,0,0,0,0
7. Code size,Parson (C),jsonstat,0,0,0,0,42628
1. Parse,PicoJSON (C++),canada.json,123.258000,3763408,3952560,545672,0
1. Parse,PicoJSON (C++),citm_catalog.json,34.672000,1862944,1862976,226421,0
1. Parse,PicoJSON (C++),twitter.json,14.711000,1174656,1533568,87648,0
2. Stringify,PicoJSON (C++),canada.json,99.016000,4194320,6447152,110281,0
2. Stringify,PicoJSON (C++),citm_catalog.json,5.955000,634896,897040,259,0
2. Stringify,PicoJSON (C++),twitter.json,3.296000,634896,897040,214,0
4. Statistics,PicoJSON (C++),canada.json,0.457000,0,0,0,0
4. Statistics,PicoJSON (C++),citm_catalog.json,0.190000,0,0,0,0
4. Statistics,PicoJSON (C++),twitter.json,0.117000,0,0,0,0
7. Code size,PicoJSON (C++),jsonstat,0,0,0,0,34160
6. SaxStatistics,pjson (C),canada.json,3.758000,0,256,1,0
6. SaxStatistics,pjson (C),citm_catalog.json,2.996000,0,256,1,0
6. SaxStatistics,pjson (C),twitter.json,1.257000,0,1536,3,0
7. Code size,pjson (C),jsonstat,0,0,0,0,14964
1. Parse,POCO (C++),canada.json,223.103000,7481392,9742816,1364364,0
1. Parse,POCO (C++),citm_catalog.json,57.134000,3294080,5555504,334647,0
1. Parse,POCO (C++),twitter.json,25.936000,1205536,1849104,128569,0
2. Stringify,POCO (C++),canada.json,73.111000,2093072,4345872,305100,0
2. Stringify,POCO (C++),citm_catalog.json,14.922000,503824,1138704,34866,0
2. Stringify,POCO (C++),twitter.json,13.743000,503824,1138704,30999,0
3. Prettify,POCO (C++),canada.json,194.276000,8114192,16502800,305102,0
3. Prettify,POCO (C++),citm_catalog.json,43.813000,2093072,4345872,34868,0
3. Prettify,POCO (C++),twitter.json,19.982000,806928,1855504,31000,0
4. Statistics,POCO (C++),canada.json,1.937000,0,32,1,0
4. Statistics,POCO (C++),citm_catalog.json,0.816000,0,64,719,0
4. Statistics,POCO (C++),twitter.json,0.541000,0,464,2594,0
5. Sax Round-trip,POCO (C++),canada.json,147.684000,1044496,3940528,330811,0
5. Sax Round-trip,POCO (C++),citm_catalog.json,32.954000,806928,2994352,6926,0
5. Sax Round-trip,POCO (C++),twitter.json,20.011000,634896,1708208,10195,0
6. SaxStatistics,POCO (C++),canada.json,94.697000,0,2261280,330795,0
6. SaxStatistics,POCO (C++),citm_catalog.json,19.719000,0,2101504,6911,0
6. SaxStatistics,POCO (C++),twitter.json,9.344000,0,643728,10180,0
7. Code size,POCO (C++),jsonstat,0,0,0,0,27516
1. Parse,RapidJSON_AutoUTF (C++),canada.json,11.368000,2892944,3192224,61,0
1. Parse,RapidJSON_AutoUTF (C++),citm_catalog.json,6.551000,1122960,1131424,29,0
1. Parse,RapidJSON_AutoUTF (C++),twitter.json,4.832000,792720,799392,25,0
2. Stringify,RapidJSON_AutoUTF (C++),canada.json,25.965000,2875440,2875712,28,0
2. Stringify,RapidJSON_AutoUTF (C++),citm_catalog.json,2.795000,569392,569664,24,0
2. Stringify,RapidJSON_AutoUTF (C++),twitter.json,2.379000,569392,569664,24,0
3. Prettify,RapidJSON_AutoUTF (C++),canada.json,49.058000,9699376,9699648,31,0
3. Prettify,RapidJSON_AutoUTF (C++),citm_catalog.json,7.254000,1916976,1917248,27,0
3. Prettify,RapidJSON_AutoUTF (C++),twitter.json,3.519000,852016,852288,25,0
4. Statistics,RapidJSON_AutoUTF (C++),canada.json,0.514000,0,0,0,0
4. Statistics,RapidJSON_AutoUTF (C++),citm_catalog.json,0.155000,0,0,0,0
4. Statistics,RapidJSON_AutoUTF (C++),twitter.json,0.060000,0,0,0,0
5. Sax Round-trip,RapidJSON_AutoUTF (C++),canada.json,37.407000,32,2875984,30,0
5. Sax Round-trip,RapidJSON_AutoUTF (C++),citm_catalog.json,8.701000,32,569936,26,0
5. Sax Round-trip,RapidJSON_AutoUTF (C++),twitter.json,6.498000,32,570704,28,0
6. SaxStatistics,RapidJSON_AutoUTF (C++),canada.json,10.494000,0,272,2,0
6. SaxStatistics,RapidJSON_AutoUTF (C++),citm_catalog.json,6.008000,0,272,2,0
6. SaxStatistics,RapidJSON_AutoUTF (C++),twitter.json,4.336000,0,1040,4,0
7. Code size,RapidJSON_AutoUTF (C++),jsonstat,0,0,0,0,34324
1. Parse,RapidJSON_FullPrec (C++),canada.json,18.577000,2892928,3192208,61,0
1. Parse,RapidJSON_FullPrec (C++),citm_catalog.json,2.706000,1122944,1131408,29,0
1. Parse,RapidJSON_FullPrec (C++),twitter.json,1.497000,792704,799376,25,0
2. Stringify,RapidJSON_FullPrec (C++),canada.json,19.228000,2875440,2875712,28,0
2. Stringify,RapidJSON_FullPrec (C++),citm_catalog.json,1.390000,569392,569664,24,0
2. Stringify,RapidJSON_FullPrec (C++),twitter.json,0.941000,688176,688448,21,0
3. Prettify,RapidJSON_FullPrec (C++),canada.json,23.652000,9699376,9699648,31,0
3. Prettify,RapidJSON_FullPrec (C++),citm_catalog.json,2.243000,1916976,1917248,27,0
3. Prettify,RapidJSON_FullPrec (C++),twitter.json,1.465000,1093680,1093952,22,0
4. Statistics,RapidJSON_FullPrec (C++),canada.json,0.496000,0,0,0,0
4. Statistics,RapidJSON_FullPrec (C++),citm_catalog.json,0.147000,0,0,0,0
4. Statistics,RapidJSON_FullPrec (C++),twitter.json,0.057000,0,0,0,0
5. Sax Round-trip,RapidJSON_FullPrec (C++),canada.json,36.774000,2875440,2875984,30,0
5. Sax Round-trip,RapidJSON_FullPrec (C++),citm_catalog.json,3.434000,569392,569936,26,0
5. Sax Round-trip,RapidJSON_FullPrec (C++),twitter.json,2.089000,688176,689488,25,0
6. SaxStatistics,RapidJSON_FullPrec (C++),canada.json,17.499000,0,272,2,0
6. SaxStatistics,RapidJSON_FullPrec (C++),citm_catalog.json,2.091000,0,272,2,0
6. SaxStatistics,RapidJSON_FullPrec (C++),twitter.json,1.171000,0,1040,4,0
7. Code size,RapidJSON_FullPrec (C++),jsonstat,0,0,0,0,31228
1. Parse,RapidJSON_Insitu (C++),canada.json,7.806000,5768320,6067328,60,0
1. Parse,RapidJSON_Insitu (C++),citm_catalog.json,2.198000,3932288,3940480,27,0
1. Parse,RapidJSON_Insitu (C++),twitter.json,1.108000,1097344,1102976,17,0
2. Stringify,RapidJSON_Insitu (C++),canada.json,19.696000,2875440,2875712,28,0
2. Stringify,RapidJSON_Insitu (C++),citm_catalog.json,1.516000,569392,569664,24,0
2. Stringify,RapidJSON_Insitu (C++),twitter.json,1.015000,688176,688448,21,0
3. Prettify,RapidJSON_Insitu (C++),canada.json,23.967000,9699376,9699648,31,0
3. Prettify,RapidJSON_Insitu (C++),citm_catalog.json,2.373000,1916976,1917248,27,0
3. Prettify,RapidJSON_Insitu (C++),twitter.json,1.395000,1093680,1093952,22,0
4. Statistics,RapidJSON_Insitu (C++),canada.json,0.508000,0,0,0,0
4. Statistics,RapidJSON_Insitu (C++),citm_catalog.json,0.145000,0,0,0,0
4. Statistics,RapidJSON_Insitu (C++),twitter.json,0.063000,0,0,0,0
5. Sax Round-trip,RapidJSON_Insitu (C++),canada.json,25.532000,2875440,5751136,30,0
5. Sax Round-trip,RapidJSON_Insitu (C++),citm_catalog.json,3.144000,569392,3445088,26,0
5. Sax Round-trip,RapidJSON_Insitu (C++),twitter.json,1.961000,688176,1323360,23,0
6. SaxStatistics,RapidJSON_Insitu (C++),canada.json,6.013000,0,2875424,2,0
6. SaxStatistics,RapidJSON_Insitu (C++),citm_catalog.json,1.697000,0,2875424,2,0
6. SaxStatistics,RapidJSON_Insitu (C++),twitter.json,0.986000,0,634912,2,0
7. Code size,RapidJSON_Insitu (C++),jsonstat,0,0,0,0,31228
1. Parse,RapidJSON (C++),canada.json,7.540000,2892928,3192208,61,0
1. Parse,RapidJSON (C++),citm_catalog.json,2.480000,1122944,1131408,29,0
1. Parse,RapidJSON (C++),twitter.json,1.510000,792704,799376,25,0
2. Stringify,RapidJSON (C++),canada.json,18.894000,2875440,2875712,28,0
2. Stringify,RapidJSON (C++),citm_catalog.json,1.394000,569392,569664,24,0
2. Stringify,RapidJSON (C++),twitter.json,0.927000,688176,688448,21,0
3. Prettify,RapidJSON (C++),canada.json,24.182000,9699376,9699648,31,0
3. Prettify,RapidJSON (C++),citm_catalog.json,2.373000,1916976,1917248,27,0
3. Prettify,RapidJSON (C++),twitter.json,1.399000,1093680,1093952,22,0
4. Statistics,RapidJSON (C++),canada.json,0.506000,0,0,0,0
4. Statistics,RapidJSON (C++),citm_catalog.json,0.146000,0,0,0,0
4. Statistics,RapidJSON (C++),twitter.json,0.057000,0,0,0,0
5. Sax Round-trip,RapidJSON (C++),canada.json,25.471000,2875440,2875984,30,0
5. Sax Round-trip,RapidJSON (C++),citm_catalog.json,3.182000,569392,569936,26,0
5. Sax Round-trip,RapidJSON (C++),twitter.json,2.107000,688176,689488,25,0
6. SaxStatistics,RapidJSON (C++),canada.json,5.885000,0,272,2,0
6. SaxStatistics,RapidJSON (C++),citm_catalog.json,1.917000,0,272,2,0
6. SaxStatistics,RapidJSON (C++),twitter.json,1.172000,0,1040,4,0
7. Code size,RapidJSON (C++),jsonstat,0,0,0,0,31228
1. Parse,sajson (C++),canada.json,7.114000,11882560,11882560,4,0
1. Parse,sajson (C++),citm_catalog.json,2.752000,9785408,9785408,4,0
1. Parse,sajson (C++),twitter.json,0.990000,3510336,3510336,4,0
4. Statistics,sajson (C++),canada.json,0.677000,0,0,0,0
4. Statistics,sajson (C++),citm_catalog.json,0.197000,0,0,0,0
4. Statistics,sajson (C++),twitter.json,0.080000,0,0,0,0
7. Code size,sajson (C++),jsonstat,0,0,0,0,34560
1. Parse,Scheredom json.h (C),canada.json,11.147000,7491600,7491600,2,0
1. Parse,Scheredom json.h (C),citm_catalog.json,4.982000,2875408,2875408,2,0
1. Parse,Scheredom json.h (C),twitter.json,2.509000,1077264,1077264,2,0
2. Stringify,Scheredom json.h (C),canada.json,30.184000,2875408,2875408,2,0
2. Stringify,Scheredom json.h (C),citm_catalog.json,4.139000,634896,634896,2,0
2. Stringify,Scheredom json.h (C),twitter.json,1.028000,634896,634896,2,0
3. Prettify,Scheredom json.h (C),canada.json,37.534000,8273936,8273936,2,0
3. Prettify,Scheredom json.h (C),citm_catalog.json,5.028000,2875408,2875408,2,0
3. Prettify,Scheredom json.h (C),twitter.json,1.246000,782352,782352,2,0
4. Statistics,Scheredom json.h (C),canada.json,0.444000,0,0,0,0
4. Statistics,Scheredom json.h (C),citm_catalog.json,0.145000,0,0,0,0
4. Statistics,Scheredom json.h (C),twitter.json,0.062000,0,0,0,0
7. Code size,Scheredom json.h (C),jsonstat,0,0,0,0,24680
1. Parse,SimpleJSON (C++),canada.json,42.320000,4697120,13736720,393542,0
1. Parse,SimpleJSON (C++),citm_catalog.json,35.891000,3034320,9945344,252403,0
1. Parse,SimpleJSON (C++),twitter.json,24.161000,2227616,5103728,144727,0
2. Stringify,SimpleJSON (C++),canada.json,228.584000,3223568,18936048,615151,0
2. Stringify,SimpleJSON (C++),citm_catalog.json,40.327000,1077264,6860944,189864,0
2. Stringify,SimpleJSON (C++),twitter.json,18.726000,1376272,6880272,78359,0
4. Statistics,SimpleJSON (C++),canada.json,0.560000,0,0,0,0
4. Statistics,SimpleJSON (C++),citm_catalog.json,0.283000,0,0,0,0
4. Statistics,SimpleJSON (C++),twitter.json,0.142000,0,0,0,0
7. Code size,SimpleJSON (C++),jsonstat,0,0,0,0,57552
1. Parse,strdup (C),canada.json,0.140000,2875408,2875408,2,0
1. Parse,strdup (C),citm_catalog.json,0.093000,2875408,2875408,2,0
1. Parse,strdup (C),twitter.json,0.033000,634896,634896,2,0
2. Stringify,strdup (C),canada.json,0.124000,2875408,2875408,2,0
2. Stringify,strdup (C),citm_catalog.json,0.094000,2875408,2875408,2,0
2. Stringify,strdup (C),twitter.json,0.033000,1077264,1077264,2,0
7. Code size,strdup (C),jsonstat,0,0,0,0,15560
1. Parse,tunnuz/JSON++ (C++),canada.json,238.080000,13957952,33893344,944120,0
1. Parse,tunnuz/JSON++ (C++),citm_catalog.json,88.372000,4124448,13999712,397405,0
1. Parse,tunnuz/JSON++ (C++),twitter.json,48.582000,1937584,5190016,222838,0
2. Stringify,tunnuz/JSON++ (C++),canada.json,197.527000,2719760,75009392,391877,0
2. Stringify,tunnuz/JSON++ (C++),citm_catalog.json,48.207000,1376272,9773984,184203,0
2. Stringify,tunnuz/JSON++ (C++),twitter.json,25.820000,655376,5707312,104714,0
4. Statistics,tunnuz/JSON++ (C++),canada.json,89.092000,0,72191328,391857,0
4. Statistics,tunnuz/JSON++ (C++),citm_catalog.json,32.054000,0,7982624,184185,0
4. Statistics,tunnuz/JSON++ (C++),twitter.json,20.092000,0,3940032,104696,0
7. Code size,tunnuz/JSON++ (C++),jsonstat,0,0,0,0,72468
1. Parse,udp/json-parser (C),canada.json,31.946000,6474656,6474656,223233,0
1. Parse,udp/json-parser (C),citm_catalog.json,14.897000,1910400,1910400,51205,0
1. Parse,udp/json-parser (C),twitter.json,6.493000,1196256,1196256,20237,0
2. Stringify,udp/json-parser (C),canada.json,46.178000,1146896,1146896,2,0
2. Stringify,udp/json-parser (C),citm_catalog.json,7.037000,655376,655376,2,0
2. Stringify,udp/json-parser (C),twitter.json,1.736000,655376,655376,2,0
3. Prettify,udp/json-parser (C),canada.json,51.578000,7958544,7958544,2,0
3. Prettify,udp/json-parser (C),citm_catalog.json,7.265000,1929232,1929232,2,0
3. Prettify,udp/json-parser (C),twitter.json,1.727000,1146896,1146896,2,0
4. Statistics,udp/json-parser (C),canada.json,0.563000,0,0,0,0
4. Statistics,udp/json-parser (C),citm_catalog.json,0.174000,0,0,0,0
4. Statistics,udp/json-parser (C),twitter.json,0.069000,0,0,0,0
7. Code size,udp/json-parser (C),jsonstat,0,0,0,0,34580
1. Parse,ujson4c (C),canada.json,6.761000,4505616,13512720,10,0
1. Parse,ujson4c (C),citm_catalog.json,2.392000,4505616,11415568,10,0
1. Parse,ujson4c (C),twitter.json,1.258000,2408464,4935696,9,0
4. Statistics,ujson4c (C),canada.json,1.266000,0,0,0,0
4. Statistics,ujson4c (C),citm_catalog.json,0.430000,0,0,0,0
4. Statistics,ujson4c (C),twitter.json,0.216000,0,0,0,0
7. Code size,ujson4c (C),jsonstat,0,0,0,0,30464
1. Parse,ujson (C++),canada.json,29.320000,17437840,17437872,112766,0
1. Parse,ujson (C++),citm_catalog.json,9.138000,8394048,8394336,58928,0
1. Parse,ujson (C++),twitter.json,5.180000,1764144,1764336,18829,0
2. Stringify,ujson (C++),canada.json,31.147000,2097168,3244048,17,0
2. Stringify,ujson (C++),citm_catalog.json,5.326000,1146896,1802256,16,0
2. Stringify,ujson (C++),twitter.json,2.544000,1146896,1802256,15,0
3. Prettify,ujson (C++),canada.json,40.799000,8388624,12582928,19,0
3. Prettify,ujson (C++),citm_catalog.json,6.402000,2097168,3244048,17,0
3. Prettify,ujson (C++),twitter.json,2.998000,1146896,1802256,15,0
4. Statistics,ujson (C++),canada.json,2.027000,0,0,0,0
4. Statistics,ujson (C++),citm_catalog.json,0.823000,0,0,0,0
4. Statistics,ujson (C++),twitter.json,0.382000,0,0,0,0
7. Code size,ujson (C++),jsonstat,0,0,0,0,137828
1. Parse,Vinenthz/libjson (C),canada.json,81.710000,3801696,3818352,334389,0
1. Parse,Vinenthz/libjson (C),citm_catalog.json,23.322000,1724528,1741184,153901,0
1. Parse,Vinenthz/libjson (C),twitter.json,10.050000,1035408,1052064,72620,0
2. Stringify,Vinenthz/libjson (C),canada.json,77.055000,4194320,4194320,13,0
2. Stringify,Vinenthz/libjson (C),citm_catalog.json,4.976000,524304,524304,10,0
2. Stringify,Vinenthz/libjson (C),twitter.json,3.887000,524304,524304,10,0
3. Prettify,Vinenthz/libjson (C),canada.json,77.205000,4194320,4194320,13,0
3. Prettify,Vinenthz/libjson (C),citm_catalog.json,5.043000,524304,524304,10,0
3. Prettify,Vinenthz/libjson (C),twitter.json,4.007000,524304,524304,10,0
4. Statistics,Vinenthz/libjson (C),canada.json,0.485000,0,0,0,0
4. Statistics,Vinenthz/libjson (C),citm_catalog.json,0.173000,0,0,0,0
4. Statistics,Vinenthz/libjson (C),twitter.json,0.094000,0,0,0,0
5. Sax Round-trip,Vinenthz/libjson (C),canada.json,20.055000,4194320,4198672,15,0
5. Sax Round-trip,Vinenthz/libjson (C),citm_catalog.json,14.841000,524304,528656,12,0
5. Sax Round-trip,Vinenthz/libjson (C),twitter.json,7.745000,524304,528656,12,0
6. SaxStatistics,Vinenthz/libjson (C),canada.json,16.375000,0,4352,2,0
6. SaxStatistics,Vinenthz/libjson (C),citm_catalog.json,11.659000,0,4352,2,0
6. SaxStatistics,Vinenthz/libjson (C),twitter.json,4.365000,0,4352,2,0
7. Code size,Vinenthz/libjson (C),jsonstat,0,0,0,0,25548
1. Parse,YAJL (C),canada.json,90.182000,9994784,9997104,501567,0
1. Parse,YAJL (C),citm_catalog.json,20.412000,2324288,2328656,189685,0
1. Parse,YAJL (C),twitter.json,8.045000,1135104,1139472,77047,0
2. Stringify,YAJL (C),canada.json,91.168000,4198944,4198944,15,0
2. Stringify,YAJL (C),citm_catalog.json,4.460000,528928,528928,12,0
2. Stringify,YAJL (C),twitter.json,2.300000,528928,528928,12,0
3. Prettify,YAJL (C),canada.json,110.982000,16781856,16781856,17,0
3. Prettify,YAJL (C),citm_catalog.json,9.170000,2101792,2101792,14,0
3. Prettify,YAJL (C),twitter.json,3.435000,1053216,1053216,13,0
4. Statistics,YAJL (C),canada.json,0.707000,0,0,0,0
4. Statistics,YAJL (C),citm_catalog.json,0.365000,0,0,0,0
4. Statistics,YAJL (C),twitter.json,0.124000,0,0,0,0
5. Sax Round-trip,YAJL (C),canada.json,144.820000,4198944,4203312,22,0
5. Sax Round-trip,YAJL (C),citm_catalog.json,10.063000,528928,533296,19,0
5. Sax Round-trip,YAJL (C),twitter.json,4.150000,528928,533296,19,0
6. SaxStatistics,YAJL (C),canada.json,53.286000,0,4368,7,0
6. SaxStatistics,YAJL (C),citm_catalog.json,5.720000,0,4368,7,0
6. SaxStatistics,YAJL (C),twitter.json,2.052000,0,4368,7,0
7. Code size,YAJL (C),jsonstat,0,0,0,0,44124
</textarea>
</div>
<div class="row" id="downloadDD" style="display: none">
<div class="btn-group pull-right" >
    <button class="btn dropdown-toggle" data-toggle="dropdown"><span class="glyphicon glyphicon-picture"></span></button>
    <ul class="dropdown-menu">
        <li><a tabindex="-1" href="#" dltype="image/jpeg">JPEG</a></li>
        <li><a tabindex="-1" href="#" dltype="image/png">PNG</a></li>
        <li><a tabindex="-1" href="#" dltype="application/pdf">PDF</a></li>
        <li><a tabindex="-1" href="#" dltype="image/svg+xml">SVG</a></li>
    </ul>
</div>
</div>
<form method="post" action="http://export.highcharts.com/" id="imageGetForm">
    <input type="hidden" name="filename" id="imageFilename" value="" />
    <input type="hidden" name="type" id="imageGetFormTYPE" value="" />
    <input type="hidden" name="width" value="1600" />
    <input type="hidden" name="svg" value="" id="imageGetFormSVG" />
</form>
</div>
</body>
</html>